package br.com.vendor_engine.cadastro;

import br.com.vendor_engine.entidades.Cliente;
import br.com.vendor_engine.entidades.Pessoa;
import br.com.vendor_engine.interfaces.InterfaceCliente;
import br.com.vendor_engine.repositorio.RepositorioCliente;
import java.util.List;
import javax.swing.JOptionPane;

public class CadastroCliente implements InterfaceCliente {
    
    private InterfaceCliente c1 = new RepositorioCliente();

    @Override
    public void salvarCliente(Pessoa pessoa, String razaoSocialCliente, String nomeFantaziaCliente, 
    String cnpjCliente, String ieCliente) {
        
        if(pessoa == null){
            JOptionPane.showMessageDialog(null, "O contato deve ser preenchido.");
        } else if(razaoSocialCliente.trim().equals("")){
            JOptionPane.showMessageDialog(null, "A razão social deve ser preenchida.");
        } else if(cnpjCliente.trim().equals("")){
            JOptionPane.showMessageDialog(null, "O CNPJ deve ser preenchido.");                    
        } else{
            c1.salvarCliente(pessoa, razaoSocialCliente, nomeFantaziaCliente, 
                    cnpjCliente, ieCliente);
        }
        
    }

    @Override
    public void alterarCliente(int idCliente, Pessoa pessoa, String razaoSocialCliente, 
    String nomeFantaziaCliente, String cnpjCliente, String ieCliente, int statusCliente) {
        
         if(pessoa == null){
            JOptionPane.showMessageDialog(null, "O contato deve ser preenchido.");
        } else if(razaoSocialCliente.trim().equals("")){
            JOptionPane.showMessageDialog(null, "A razão social deve ser preenchida.");
        } else if(cnpjCliente.trim().equals("")){
            JOptionPane.showMessageDialog(null, "O CNPJ deve ser preenchido.");                    
        } else{
            c1.alterarCliente(idCliente, pessoa, razaoSocialCliente, nomeFantaziaCliente, 
                    cnpjCliente, ieCliente, statusCliente);
        }
        
    }

    @Override
    public List<Cliente> pegarTodosClientes() {
        return c1.pegarTodosClientes();
    }

    @Override
    public Cliente getCliente() {
        return c1.getCliente();
    }   
    
}
